package com.fanfanwang.ffw.app.asynctask;

import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.LinkedHashMap;

import android.app.Activity;
import android.text.TextUtils;
import android.widget.Toast;

import com.fanfanwang.ffw.app.AppConstant;
import com.fanfanwang.ffw.app.R;
import com.fanfanwang.ffw.app.bean.SucUpdateMobileBean;
import com.fanfanwang.ffw.app.common.Md5Util;
import com.fanfanwang.ffw.app.common.ToastAlone;
import com.fanfanwang.ffw.app.net.HttpRequest.HttpRequestException;
import com.fanfanwang.ffw.app.net.IssAsyncTask;
import com.fanfanwang.ffw.app.net.IssNetLib;
import com.fanfanwang.ffw.app.net.WebServiceHelper;
import com.fanfanwang.ffw.app.ui.my.MyUpdateBoundTelAct;

public class UpdateMobileAsyncTask extends
		IssAsyncTask<String, String, SucUpdateMobileBean> {
	private Activity mActivity;
	private String userid;
	private String mobile;

	public UpdateMobileAsyncTask(Activity activity, String userid, String mobile) {
		super(activity);
		mActivity = activity;
		this.userid = userid;
		this.mobile = mobile;
	}

	@Override
	protected SucUpdateMobileBean doInBackground(String... params) {
		// TODO addAuctionPrice($apiusername,$apipassword,$userid,$pid,$price)
		SucUpdateMobileBean bean = null;
		LinkedHashMap<String, Object> paramsMap = new LinkedHashMap<String, Object>();
		paramsMap.put("apiusername", "parking");
		paramsMap.put("apipassword", Md5Util.getMD5To32("parking"));
		paramsMap.put("userid", userid);
		paramsMap.put("mobile", mobile);
		try {
			bean = IssNetLib.getInstance(mActivity).getUpdateMobile(
					WebServiceHelper._UPDATEMOBILE, paramsMap);
		} catch (HttpRequestException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			// exception = getResources().getString(R.string.e_net_error);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			// exception = getResources().getString(R.string.e_json);
		}
		return bean;
	}

	@Override
	protected void onPostExecute(SucUpdateMobileBean result) {
		super.onPostExecute(result);
		if (exception != null) {
			ToastAlone.showToast(mActivity, exception);
			return;
		}
		if (result != null) {
			if (result.status == 1) {

				if (result.msg != null) {
					// TODO 代表修改成功了。
					try {
						ToastAlone.showToast(mActivity,
								URLDecoder.decode(result.msg, "utf-8"),
								ToastAlone.LENGTH_SHORT);
						MyUpdateBoundTelAct.iUpdateMobileable
								.setUpdateMobileSuccess();
					} catch (UnsupportedEncodingException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
				}
			} else if (result.status == 0) {
				if (!TextUtils.isEmpty(result.msg)) {
					ToastAlone.showToast(mActivity,
							AppConstant.URLDecoderString(result.msg),
							Toast.LENGTH_SHORT).show();
				} else {
					ToastAlone.showToast(
							mActivity,
							mActivity.getResources().getString(
									R.string.e_net_error)).show();
				}
			}
		}
	}
}
